package com.cn.pojo;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.util.Date;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

/**
    * 用户表
    */
@ApiModel(value="com-cn-pojo-SysUser")
@Data
@AllArgsConstructor
@NoArgsConstructor
@TableName(value = "sys_user")
public class SysUser {
    /**
     * 用户ID
     */
    @TableId(value = "id", type = IdType.AUTO)
    @ApiModelProperty(value="用户ID")
    private Long id;

    /**
     * 用户名
     */
    @TableField(value = "username")
    @ApiModelProperty(value="用户名")
    private String username;

    /**
     * 密码
     */
    @TableField(value = "password")
    @ApiModelProperty(value="密码")
    private String password;

    /**
     * 昵称
     */
    @TableField(value = "nickname")
    @ApiModelProperty(value="昵称")
    private String nickname;

    /**
     * 邮箱
     */
    @TableField(value = "email")
    @ApiModelProperty(value="邮箱")
    private String email;

    /**
     * 头像
     */
    @TableField(value = "avatar")
    @ApiModelProperty(value="头像")
    private String avatar;

    /**
     * 联系电话
     */
    @TableField(value = "phone_number")
    @ApiModelProperty(value="联系电话")
    private String phoneNumber;

    /**
     * 账户是否禁用 默认为1（可用）
     */
    @TableField(value = "enabled")
    @ApiModelProperty(value="账户是否禁用 默认为1（可用）")
    private Integer enabled;

    /**
     * 创建时间
     */
    @TableField(value = "create_time")
    @ApiModelProperty(value="创建时间")
    private Date createTime;

    /**
     * 修改时间
     */
    @TableField(value = "update_time")
    @ApiModelProperty(value="修改时间")
    private Date updateTime;

    /**
     * 性别 1男 0女 2保密
     */
    @TableField(value = "sex")
    @ApiModelProperty(value="性别 1男 0女 2保密")
    private Integer sex;

    /**
     * 0:超级管理员，1：系统用户
     */
    @TableField(value = "type")
    @ApiModelProperty(value="0:超级管理员，1：系统用户")
    private Integer type;

    /**
     * 生日
     */
    @TableField(value = "birth")
    @ApiModelProperty(value="生日")
    private Date birth;

    /**
     * 最后一次登录时间
     */
    @TableField(value = "last_login_time")
    @ApiModelProperty(value="最后一次登录时间")
    private Date lastLoginTime;

    /**
     * token令牌
     */
    @TableField(value = "token")
    @ApiModelProperty(value="token令牌")
    private String token;

    public static final String COL_ID = "id";

    public static final String COL_USERNAME = "username";

    public static final String COL_PASSWORD = "password";

    public static final String COL_NICKNAME = "nickname";

    public static final String COL_EMAIL = "email";

    public static final String COL_AVATAR = "avatar";

    public static final String COL_PHONE_NUMBER = "phone_number";

    public static final String COL_ENABLED = "enabled";

    public static final String COL_CREATE_TIME = "create_time";

    public static final String COL_UPDATE_TIME = "update_time";

    public static final String COL_SEX = "sex";

    public static final String COL_TYPE = "type";

    public static final String COL_BIRTH = "birth";

    public static final String COL_LAST_LOGIN_TIME = "last_login_time";

    public static final String COL_TOKEN = "token";
}